Prime mover mountable hydraulic tool and related monitoring systems and methods

ABSTRACT

A hydraulic tool with a protective box assembly including a control circuit and hydraulic pressure sensors is used to operate a prime mover. The control circuit and the hydraulic pressure sensors are used to monitor performance of the hydraulic tool. Systems and methods implemented in a cloud monitor the performance of the hydraulic tool. The systems and methods utilize data collected by the hydraulic pressure sensors, processed by the control circuit, and transmitted via an antenna from the hydraulic tool to the cloud. A first set of systems and methods detect and predict a jam condition in blades associated with the hydraulic tool using statistical analysis of the data. A second set of systems and methods detect faults associated with the hydraulic tool including hydraulic leakage, mechanical wear, and friction.

FIELD

The present disclosure relates to large hydraulic tools that are mountedonto a prime mover, such as an excavator, during use.

BACKGROUND

This section provides background information related to the presentdisclosure which is not necessarily prior art.

Earth movers often use hydraulic tools to perform various operations.Sensors for monitoring the operations of the hydraulic tools aretypically distributed at multiple locations on and around the hydraulictools. These sensors are exposed to harsh environments including harshtemperatures, vibrations, dirt, rain, snow, and so on. Exposure to harshenvironments can adversely affect the longevity of the sensors and theability of the sensors to function reliably. Further, the hydraulictools often encounter problems during operation, which can cause thehydraulic tools and the earth movers to be out of service for a periodof time. The downtimes can adversely affect productivity of the earthmovers and can be costly.

SUMMARY

This section provides a general summary of the disclosure, and is not acomprehensive disclosure of its full scope or all of its features.

In accordance with an aspect of the present disclosure, a prime movermountable hydraulic tool can include a protective box assembly. Theprotective box assembly can house a combination including a bore-sideand a rod-side hydraulic pressure sensor, a control circuit, and awireless transmitter antenna. The wireless transmitter antenna canprovide a communication channel to a user interface independent of anycommunication channel provided by the prime mover. The protective boxassembly can be mounted to a mounting wall of the prime mover mountablehydraulic tool. A bore-side hydraulic fluid passage can extend betweenthe bore-side hydraulic pressure sensor within the protective boxassembly and a cylinder bore-side block port. The bore side hydraulicfluid passage can include a bore-side hydraulic jump hose and abore-side snubber. A rod-side hydraulic fluid passage can extend betweenthe rod-side hydraulic pressure sensor within the protective boxassembly and a cylinder rod-side block port. The rod-side hydraulicfluid passage can include a rod-side hydraulic jump hose and a rod-sidesnubber. A port block can be mounted within an interior of theprotective box assembly. The port block can provide a portion of each ofthe bore-side and rod-side hydraulic fluid passages, respectively. Theport block can provide replacement bore-side and rod-side ports coupledto the bore-side and rod-side hydraulic fluid passages, respectively.The replacement bore-side and rod-side ports can replace the bore-sideand rod-side ports to which the bore-side and rod-side hydraulic fluidpassages are coupled, respectively. An electrical power source couplingcan be mounted on the protective box assembly and can be operablycoupled to transfer power to the control circuit, the wirelesstransmitter antenna, and the bore-side and rod-side hydraulic pressuresensors mounted within the protective box assembly.

In accordance with another aspect of the present disclosure, a systemfor detecting jamming of a component operated by the prime movermountable hydraulic tool can include a data acquisition module, a dataprocessing module, and a jam detection module implemented in a cloud.The data acquisition module can acquire a time series data regardingbore pressure and rod pressure from sensors monitoring a hydrauliccylinder operating a blade associated with an earth moving equipment.The data processing module can divide the time series data into aplurality of windows of a predetermined duration and identify times atwhich bore pressure and rod pressure peak in the windows. The dataprocessing module can determine durations between successive pairs ofbore and rod pressure peaks, where in each pair, a rod pressure peakfollows a bore pressure peak. The jam detection module can detect ajamming of the blade when one of the durations is less than or equal toa predetermined threshold. The jam detection module can detect aprobability of the blade jamming when the durations between thesuccessive pairs of bore and rod pressure peaks decrease with time. Thesystem can include a statistical analysis module that can generate a Zscore based on the durations between successive pairs of bore and rodpressure peaks and detect the jamming of the blade and/or theprobability of the blade jamming based on the Z score. The system canalso detect and/or predict the jamming of the blade based on area underthe curve of the rod pressure. The system can transmit a messageindicating the jamming of the blade and/or the probability of the bladejamming to a computing device such as a smartphone.

In accordance with another aspect of the present disclosure, a systemfor detecting faults in the prime mover mountable hydraulic tool caninclude a receiver and a processor implemented in a cloud. The receivercan receive data via a network from a first sensor sensing pressure on abore side of a hydraulic cylinder associated with the hydraulic tool,and from a second sensor sensing pressure on a rod side of the hydrauliccylinder associated with the hydraulic tool. The processor can determinefirst baseline values of the pressures on the bore side and the rod sideof the hydraulic cylinder based on the data received from the first andsecond sensors during a first test operation, such as a stall test,performed by the hydraulic cylinder at a first time. After the hydraulictool is used for some time, the processor can determine second baselinevalues of the pressures on the bore side and the rod side of thehydraulic cylinder based on the data received from the first and secondsensors during a second test operation, such as a stall test performedby the hydraulic cylinder at a second time. A mobile device can be usedto initiate the first and second test operations performed by thehydraulic cylinder at the first and second times. The processor candetect an abnormality associated with the hydraulic cylinder based onthe first and second baseline values of the pressures on the bore sideand the rod side of the hydraulic cylinder. The abnormality can includeone or more of a fluid leakage, mechanical wear, and friction. Thesystem can transmit a message to a mobile device via the networkindicating detection of the abnormality associated with the hydrauliccylinder.

Further areas of applicability will become apparent from the descriptionprovided herein. The description and specific examples in this summaryare intended for purposes of illustration only and are not intended tolimit the scope of the present disclosure.

DRAWINGS

The drawings described herein are for illustrative purposes only ofselected embodiments and not all possible implementations, and are notintended to limit the scope of the present disclosure.

FIG. 1 is a side elevation view of one example prime mover mountablehydraulic tool in accordance with the present disclosure mounted to oneexample prime mover.

FIG. 2 is a schematic diagram of various components of the example primemover mountable hydraulic tool of FIG. 1 and its environment, includingindependent components of the example prime mover.

FIG. 3 is a side elevation view of various components of the exampleprime mover mountable hydraulic tool of FIG. 1, including a mainhousing.

FIG. 4 is another side elevation view of various components of FIG. 3,but with the main housing removed for clarity.

FIG. 5 is an exploded perspective view of various components related totwo compartments of an example protective box assembly of the exampleprime mover mountable hydraulic tool of FIG. 1.

FIG. 6 is a cross-section view including the various components of FIG.5 of the example protective box assembly.

FIG. 7 is a side elevation view including the various components of FIG.5 of the example protective box assembly.

FIG. 8 is an exploded perspective view of various components related toanother compartment of the example protective box assembly of theexample prime mover mountable hydraulic tool of FIG. 1.

FIG. 9 is an exploded perspective view including the various componentsof FIGS. 7 and 8 of the example protective box assembly.

FIG. 10 is an exploded perspective view including the various componentsof FIG. 9 of the example protective box assembly.

FIG. 11 is an exploded perspective view including the various componentsof FIG. 10 of the example protective box assembly.

FIG. 12 is a bottom plan view of the example protective box assembly ofthe example prime mover mountable hydraulic tool of FIG. 1.

FIG. 13 is a cross-section view of the example protective box assemblythrough line 13-13 of FIG. 12.

FIGS. 14-16 show an example of a distributed computing system forimplementing jam detection and fault detection systems and methods shownin FIGS. 17-32.

FIG. 17 shows an example of a jam detection system for detecting jammingof components of the prime mover mountable hydraulic tool of FIG. 1.

FIGS. 18-20 show graphs of various pressures associated with the primemover mountable hydraulic tool of FIG. 1, which are utilized by the jamdetection system of FIG. 17.

FIG. 21 shows an example of a jam detection method for detecting jammingof components of the prime mover mountable hydraulic tool of FIG. 1 usedby the jam detection system of FIG. 17.

FIG. 22 shows an example of an anomaly detection method used by the jamdetection system of FIG. 17.

FIG. 23 shows an example of a jam detection methods used by the jamdetection system of FIG. 17.

FIG. 24 shows an example of a jam prediction method used by the jamdetection system of FIG. 17.

FIG. 25 shows an example of a method for scoring alarms/alerts providedby the jam detection system of FIG. 17.

FIG. 26 shows an example of a method for labeling data processed by thejam detection system of FIG. 17.

FIG. 27 shows an example of a method for detecting a jam using aclassifier trained using machine learning.

FIG. 28 shows an example of a method of further training the classifier.

FIG. 29 shows an example of a fault detection system for detectingfaults in the prime mover mountable hydraulic tool of FIG. 1.

FIG. 30 shows an example of a schematic of a hydraulic cylinderassociated with the prime mover mountable hydraulic tool of FIG. 1.

FIG. 31 shows an example of a graph of bore and rod pressures used bythe fault detection system of FIG. 29.

FIG. 32 shows a first example of a fault detection method for detectingfaults in the prime mover mountable hydraulic tool of FIG. 1 used by thefault detection system of FIG. 29.

FIG. 33 shows a second example of a fault detection method for detectingfaults in the prime mover mountable hydraulic tool of FIG. 1 used by thefault detection system of FIG. 29.

Corresponding reference numerals indicate corresponding parts throughoutthe several views of the drawings.

DETAILED DESCRIPTION

Example embodiments will now be described more fully with reference tothe accompanying drawings.

FIGS. 1-13 illustrate one example of a prime mover mountable hydraulictool 20 in accordance with the present disclosure. The prime mover 21can include a boom 23 to which the hydraulic tool 20 is mounted duringuse. The prime mover 21 typically includes a prime mover user interface25 coupled to a prime mover control circuit 27. Typically, a pluralityof prime mover hydraulic pressure sensors 29 that are spaced at blockports 31 in different locations around the prime mover 21 are eachcoupled to the prime mover control circuit 27 via relatively long runsof electrical cables 33.

The hydraulic tool 20 can include a protective box assembly 30 mountedto a mounting wall 44 of the hydraulic tool 20. The protective boxassembly 30 houses a combination of components that can include acontrol circuit 34, which can include a microprocessor 36 and memory 38,coupled to a plurality of hydraulic pressure sensors 22 and to awireless transmitter antenna 32 that provides a communication channel100 to a user interface 37 independent of any communication channelprovided by the prime mover 21. For example, the wireless communicationchannel 100 can be between the hydraulic tool 20 and a computing cloud24 including microprocessors 26 and memory 28. The cloud 24 can be incommunication with a user interface 37. The user interface 37 can beprovided, for example, by a phone or a computer.

The hydraulic pressure sensors 22 that are housed within the protectivebox assembly 30 can include a bore-side hydraulic pressure sensor 40 anda rod-side hydraulic pressure sensor 42 of a hydraulic cylinder, and caninclude a clockwise rotation hydraulic pressure sensor 46 and acounterclockwise rotation hydraulic pressure sensor 48 of a hydraulicmotor(s). For example, the hydraulic cylinder can be used to open andclose jaws or blades 50 of the hydraulic tool 20, and the hydraulicmotor(s) can be used to rotate the hydraulic tool 20, including its jawsor blades 50, clockwise and counterclockwise. Throughout the presentdisclosure, a hydraulic tool with a single hydraulic cylinder isdescribed for example only. The teachings of the present disclosureapply equally to hydraulic tools with multiple hydraulic cylinders.

A hydraulic fluid passage 88 can extend between each of the co-locatedhydraulic pressure sensors 22 its respective one of a plurality of blockports 90 spaced around the hydraulic tool 20. For example, a bore-sidehydraulic fluid passage 52 can extend between a cylinder bore-side blockport 86 and the bore-side hydraulic pressure sensor 40 within theprotective box assembly 30. The bore side hydraulic fluid passage 52 caninclude a bore-side hydraulic jump hose 54 and a bore-side snubber 56. Arod-side hydraulic fluid passage 58 can extend between a cylinderrod-side block port 60 and the rod-side hydraulic pressure sensor 42within the protective box assembly 30. The rod-side hydraulic fluidpassage 58 can include a rod-side hydraulic jump hose 62 and a rod-sidesnubber 64.

A clockwise rotation hydraulic fluid passage 66 can extend between amotor clockwise rotation block port 68 and the clockwise rotationhydraulic pressure sensor 46 within the protective box assembly 30. Theclockwise rotation hydraulic fluid passage 66 can include a clockwiserotation hydraulic jump hose 70 and a clockwise rotation snubber 72. Acounterclockwise rotation hydraulic fluid passage 74 can extend betweena motor counterclockwise rotation block port 76 and the counterclockwiserotation hydraulic pressure sensor 48 within the protective box assembly30. The counterclockwise rotation hydraulic fluid passage 74 can includea counterclockwise rotation hydraulic jump hose 78 and acounterclockwise rotation snubber 80.

A port block 82 can be mounted within an interior 84 of the protectivebox assembly 30. The port block 82 can provide a portion of each of thebore-side, rod-side, clockwise rotation, and counterclockwise rotationhydraulic fluid passages, 52, 58, 66, and 74 respectively. The portblock 82 can provide replacement bore-side, rod-side, clockwiserotation, and counterclockwise rotation ports, 92, 94, 96, and 98respectively, that are coupled to the bore-side, rod-side, clockwiserotation, and counterclockwise rotation hydraulic fluid passages, 52,58, 66, and 74 respectively.

These replacement bore-side, rod-side, clockwise rotation, andcounterclockwise rotation ports, 92, 94, 96, and 98 respectively, can bereplacements for the bore-side, rod-side, clockwise rotation, andcounterclockwise rotation block ports, 86, 60, 68, and 76 respectively,to which the bore-side, rod-side, clockwise rotation, andcounterclockwise rotation hydraulic fluid passages, 52, 58, 66, and 74respectively, are coupled. For example, the bore-side, rod-side,clockwise rotation, and counterclockwise rotation block ports, 86, 60,68, and 76 respectively, can be block test ports and the replacementbore-side, rod-side, clockwise rotation, and counterclockwise rotationports, 92, 94, 96, and 98 respectively, of the port block 82 of theprotective box assembly 30 can be replacement block test ports.

Because all of the hydraulic pressure sensors 40, 42, 46, 48 areco-located together within the protective box assembly 30, the hydraulicjump lines or hoses 54, 62, 70, and 78 run between the spaced apartbore-side, rod-side, clockwise rotation, and counterclockwise rotationblock ports, 86, 60, 68, and 76 respectively, and the bore-side,rod-side, clockwise rotation, and counterclockwise rotation sensors, 40,42, 46, and 48 respectively, that are co-located with the controlcircuit 34 within the protective box assembly 30. This is in contrast tothe electrical lines or cables 33 running between the prime moverhydraulic pressure sensors 29 that are spaced away from the prime movercontrol circuit 27 and spaced apart from each other at the variouscorresponding block ports 31 located around the prime mover 21. This canbe advantageous, because hydraulic tool mechanics are much moreknowledgeable about how to properly run hydraulic lines or hoses arounda hydraulic tool to avoid damaging the hydraulic lines or other problemsduring tool operation, than about how to properly run electrical linesaround a hydraulic tool without resulting in problems.

A “snubber” comprises a hydraulic fluid flow restriction in a hydraulicfluid passage (e.g., 52, 58, 66, and 74) that dampens rapid pressureshocks and fluctuations in order to protect hydraulic components (e.g.,sensors 40, 42, 46, 48). As examples, the snubbers 56, 64, 72, 80 can beindividual components coupled between the respective hydraulic jump hoseand block motor and cylinder ports, or between the respective hydraulicjump hose and the port block 82 within the protective box assembly 30.As another example, the snubbers 56, 64, 72, 80 can be integrally formedas part of the port block 82 within the protective box assembly 30.

An electrical power source coupling 102 can be mounted to the protectivebox assembly 30. The electrical power source coupling 102 can beoperably coupled to transfer power from the coupling 102 to the controlcircuit 34, the wireless transmitter antenna 32, and the hydraulicpressure sensors 22 mounted within the protective box assembly. Thehydraulic tool 20 can include an electrical power source 104 that iscoupled to the electrical power source coupling 102.

The electrical power source 104 of the hydraulic tool 20 can provideelectrical power to the protective box assembly 30 independent of anyelectrical power provided by the prime mover 21. The electrical powersource 104 can include an electrical power generation assembly 106 thatcan include a hydraulic motor 108 that is operably coupleable tohydraulic lines from the prime mover 21 to be driven by hydraulic fluidfrom the prime mover 21 when coupled thereto. An electrical generator110 can be driven by the hydraulic motor 108 to produce electricity onboard the hydraulic tool 20 itself. One example independent electricalpower generation assembly 106 for a prime mover mountable hydraulic tool20 is described in commonly-assigned U.S. patent application Ser. No.16/478,829 filed on Jul. 17, 2019 and entitled “Excavator Boom MountableHigh Pressure Hydraulic Tool Including a Hydraulic Motor DrivenGenerator,” which is hereby incorporated herein by reference in itsentirety.

The protective box assembly 30 can include a first compartment 112 towhich the wireless transmitter antenna 32 is mounted. Alternatively, thewireless transmitter antenna 32 can be mounted outside the protectivebox assembly 30. The first compartment 112 can have a first compartmentinterior 84 in which each of the control circuit 34, and the bore-side,rod-side, clockwise rotation, and counterclockwise rotation hydraulicpressure sensors 40, 42, 46, 48 can be mounted. The protective boxassembly 30 can include a second compartment 114 having a secondcompartment interior 116 in which the first compartment can be mounted.The wireless transmitter antenna 32 can extend through an aperture 118in wall 120 of second compartment 114. A protective antenna cover 122can be coupled to the wall 120 of the second compartment 116 and canextend over the wireless transmitter antenna 32. The protective boxassembly 30 can include a third compartment 124 mounted within the firstcompartment interior 84. The third compartment 124 can have a thirdcompartment interior 126 in which the control circuit 34 can be mounted.

The protective box assembly 30 can include a first vibration dampener128 operably positioned between an interior surface 130 of the secondcompartment 114 and an exterior surface 132 of the first compartment112. More generally, the protective box assembly 30 can include a firstvibration dampener 128 operably positioned between the mounting wall 44and each of the control circuit 34, and hydraulic pressure sensors 40,42, 46, 48 and the wireless transmitter antenna 32. A second vibrationdampener 134 can be operably positioned between an interior surface 136of the first compartment 112 and the control circuit 34. More generally,the protective box assembly 30 can include a second vibration dampener134 operably positioned between the first vibration dampener 128 and thecontrol circuit 34.

The port block 82 mounted within the protective box assembly 30 caninclude bore-side, rod-side, clockwise rotation, and counterclockwiserotation inlet ports, 138, 140, 142, and 144, respectively, of thebore-side, rod-side, clockwise rotation, and counterclockwise rotationfluid passages, 52, 58, 66, and 74, respectively. Each of the bore-side,rod-side, clockwise rotation, and counterclockwise rotation inlet ports,138, 140, 142, and 144, respectively, of the port block 84 and theelectrical coupling 102 each face outwardly along a first common side146 of the protective box assembly 30. In other words, these inlet ports138, 140, 142, 144 and the electrical coupling 102 are positioned andoriented so that coupling access to each of them is provided along thefirst common side 146.

The replacement bore-side, rod-side, clockwise rotation, andcounterclockwise rotation ports 92, 94, 96, and 98 respectively, canface outwardly along a second common side 148 of the protective boxassembly 30. The second common side 148 of the protective box assembly30 can be adjacent to the first common side 146. For example, the firstcommon side 146 can be one of two major sides of the protective boxassembly, and the second common side 148 can be one of the minor sidesspanning between the two major sides.

The first common side 146 of the protective box assembly 30 can face themounting wall 44 of the hydraulic tool 20. The mounting wall 44 can havean opening 150 therethrough. Each of the bore-side, rod-side, clockwiserotation, and counterclockwise rotation fluid passages 52, 58, 66, and74, respectively, and an electrical power cable 152 coupled to theelectrical power source coupling 102 can pass through the opening 150 inthe mounting wall 44 of the hydraulic tool 20. The protective boxassembly 30 can include magnets 154 that couple the protective boxassembly 30 to the mounting wall 44.

The protective box assembly 30 including the control circuit 34 and thehydraulic pressure sensors 22 can be used in many applications tomonitor performance of the hydraulic tool 20. For example, two sets ofsystems and methods are described below that can monitor performance ofthe hydraulic tool 20. The two sets of systems and methods areimplemented in the cloud 24. The two sets of systems and methods canutilize the data collected by the hydraulic pressure sensors 22,processed by the processor 36 and memory 38 of the control circuit 34,and transmitted via the antenna 32 from the hydraulic tool 20 to thecloud 24. A first set of systems and methods described with reference toFIGS. 14-28 can detect and predict a jam condition in the blades 50using statistical analysis of the sensor data as explained below indetail. A second set of systems and methods described subsequently withreference to FIGS. 29-33 can detect faults associated with the hydraulictool 20 such as hydraulic leakage, mechanical wear, friction, and so onas explained below in detail.

FIGS. 14-28 illustrate examples of systems and methods for detectingjamming of the blades 50 and for maintaining gap between blades 50 ofthe hydraulic tool 20 in accordance with the present disclosure.Initially, FIGS. 14-16 illustrate an example of a distributed computingsystem in which the systems and methods for jam detection and gapmaintenance can be implemented. The distributed computing system shownin FIGS. 14-16 can also be used to implement the systems and methodsshown in FIGS. 29-33 that detect the faults associated with thehydraulic tool 20. FIGS. 17-20 illustrate an example of a system for jamdetection and gap maintenance. FIGS. 21-28 illustrate examples ofvarious methods for jam detection and gap maintenance. First, a briefoverview of the systems and methods for jam detection and gapmaintenance is provided. Thereafter, the systems and methods for jamdetection and gap maintenance are described in detail with reference toFIGS. 14-28.

Briefly, the systems and methods for jam detection and gap maintenanceuse a statistical model to detect and predict jamming of the blades 50.The systems and methods divide raw data received from the hydraulicpressure sensors 22 into windows based on both bore and rod pressures.The windowing is performed using rules to capture fast changes in theraw values. The systems and methods extract relevant features from eachwindow (e.g., peak to peak time, area under the curve, opening time ofthe blades 50, and so on). The systems and methods detect an anomaly(e.g., jamming of the blades 50) using a statistical model (e.g., usingZ scores). For example, the anomaly detection is performed based onstatistical analyses of features such as peak to peak times and areaunder the curve and is used to identify anomalous events (e.g., pre-jamand post-jam events).

Further, a labeling algorithm is used to label jam events. For example,in a batch of windows, a specific jam pattern is searched (e.g., whethermaximum bore and rod pressure values inside the window are greater thanor equal to predetermined values, and whether peak to peak time is lessthan or equal to a predetermined value). If these conditions aredetected in a predetermined number of windows in each batch, an event islabeled as a jam. Another condition for labeling an event as a jam mayinclude having at least a predetermined number of windows with peak topeak times less than or equal to a predetermined value and one windowhaving a relatively long opening time for the blades 50.

Additionally, using ground truth based labeled data and machine learningtechniques, the systems and methods can create a multiclass classifierto classify the windows (or batch of windows) into specific classes ofevents (e.g., normal, pre-jam, and jam). Additional features can beinput to the classifier using a library that can automatically extract arelatively large number of features from a times series data collectedfrom the hydraulic pressure sensors 22.

Throughout the following description, the peak to peak time is a timebetween when the bore pressure drops from a peak value to subsequentlywhen the rod pressure rises to a peak value. Essentially, the systemsand methods detect if a spike in the rod pressure occurs immediatelyfollowing a spike in the bore pressure. If such a signature pattern isdetected, a jam is detected. Further, the features of peak to peak timesand the area under the curve for the rod pressure are used for exampleonly. Additional or alternate features can be used.

The systems and methods can predict a probability of a jam. For example,the blades 50 can jam due to various reasons such as material beingstuck in the gap between the blades 50, excessive friction between theblades 50, and so on. The prediction can help in triaging various issuessuch as whether the blades 50 are maintained properly, whether theoperator is using the equipment properly, whether the blades 50 need tobe serviced (e.g., perform gap maintenance) or replaced, and so on.These and other features of the systems and methods for jam detectionand gap maintenance are now described below in detail with reference toFIGS. 14-28.

FIGS. 14-16 illustrate an example of a distributed computing system inwhich the systems and methods for jam detection and gap maintenance canbe implemented. The distributed computing system shown in FIGS. 14-16can also be used to implement the systems and methods for detectingfaults associated with the hydraulic tool 20, which are described laterwith reference to FIGS. 29-33. Throughout the following description,references to terms such as servers, client devices, applications and soon are for illustrative purposes only. The terms server and clientdevice are to be understood broadly as representing computing deviceswith one or more processors and memory configured to execute machinereadable instructions. The client device also includes the hydraulictool 20 as shown and described above with reference to FIGS. 1-13. Theterms application and computer program are to be understood broadly asrepresenting machine readable instructions executable by the computingdevices.

FIG. 14 shows a simplified example of a distributed computing system200. The distributed computing system 200 includes a distributedcommunications system 210, one or more client devices 220-1, 220-2, . .. , and 220-M (collectively, client devices 220 such as the hydraulictool 20); one or more additional client devices 225-1, 225-2, . . . ,and 225-P (collectively, client devices 225 such as mobile computingdevices); and one or more servers 230-1, 230-2, . . . , and 230-N(collectively, servers 230 such as cloud computing devices). M, N, P areintegers greater than or equal to one.

The distributed communications system 210 may include a local areanetwork (LAN), a wide area network (WAN) such as the Internet, or othertype of network. The client devices 220 and 225 and the servers 230 maybe located at different geographical locations and communicate with eachother via the distributed communications system 210. The client devices220 and 225 and the servers 230 connect to the distributedcommunications system 210 using wireless and/or wired connections. Theservers 230 may be located a cloud (e.g., element 24 shown in FIGS.1-13).

The client devices 225 may include smartphones, personal digitalassistants (PDAs), tablets, laptop computers, personal computers (PCs),etc. The client devices 220 include the hydraulic tool 20 shown in FIGS.1-13. The servers 230 may provide multiple services to the clientdevices 220 and 225. For example, the servers 230 may execute softwareapplications developed by one or more vendors. The servers 230 may hostmultiple databases that are relied on by the software applications inproviding services to the client devices 220 and 225. In some examples,one or more of the servers 230 execute an application that performs jamdetection and prediction, and an application that detects faultsassociated with the hydraulic tool 20, as described below in furtherdetail. For example, a server 230 processes sensor data received fromthe client device 220 such as the hydraulic tool 20 and provides alertsto a client device 225 such as a smartphone indicating status of theblades 50 of the client device 220.

FIG. 15 shows a simplified example of the client devices 220-1 and225-1. The client device 220-1 includes hydraulic pressure sensors 253comprised in the hydraulic tool 20 (e.g., element 22 shown in FIGS.1-13). The client device 225-1 does not include the hydraulic pressuresensors 253. The client device 220-1, 225-1 may typically include acentral processing unit (CPU) or processor 250 (e.g., the client device220-1 may include element 36 shown in FIGS. 1-13), one or more inputdevices 252 (e.g., a keypad, touchpad, mouse, touchscreen, etc.), adisplay subsystem 254 including a display 256, a network interface 258,memory 260, and bulk storage 262.

The network interface 258 connects the client device 220-1, 225-1 to thedistributed computing system 200 via the distributed communicationssystem 210. For example, the network interface 258 may include a wiredinterface (for example, an Ethernet interface) and/or a wirelessinterface (for example, a Wi-Fi, Bluetooth, near field communication(NFC), or other wireless interface). For example, in the client device220-1, the network interface 258 may include or communicate with theantenna 32 shown in FIGS. 1-13. The memory 260 (e.g., in the clientdevice 220-1, element 38 shown in FIGS. 1-13) may include volatile ornonvolatile memory, cache, or other type of memory. The bulk storage 262may include flash memory, a magnetic hard disk drive (HDD), and otherbulk storage devices.

The processor 250 of the client device 220-1, 225-1 (e.g., in the clientdevice 220-1, element 36 shown in FIGS. 1-13) executes an operatingsystem (OS) 264 and one or more client applications 266. The clientapplications 266 include an application that accesses the servers 230via the distributed communications system 210. Additionally, in theclient device 220-1, the client application 266 processes data collectedthe hydraulic pressure sensors 22 and transmits the data to thedistributed communications system 210 via the antenna 32 shown in FIGS.1-13. The distributed communications system 210 transmits the datareceived from the client application 266 to one or more serverapplications 286 that implement the two sets of systems and methods inthe servers 230, that respectively detect and predict jams in the blades50, and that detect faults in the hydraulic tool 20 as described belowin detail.

FIG. 16 shows a simplified example of the server 230-1. The server 230-1typically includes one or more CPUs or processors 270 (e.g., element 26shown in FIGS. 1-13), a network interface 278, memory 280 (e.g., element28 shown in FIGS. 1-13), and bulk storage 282. In some implementations,the server 230-1 may be a general-purpose server and include one or moreinput devices 272 (e.g., a keypad, touchpad, mouse, and so on) and adisplay subsystem 274 including a display 276. The server 230-1 may beimplemented in a cloud (e.g., element 24 shown in FIGS. 1-13).

The network interface 278 connects the server 230-1 to the distributedcommunications system 210. For example, the network interface 278 mayinclude a wired interface (e.g., an Ethernet interface) and/or awireless interface (e.g., a Wi-Fi, Bluetooth, near field communication(NFC), or other wireless interface). The memory 280 may include volatileor nonvolatile memory, cache, or other type of memory. The bulk storage282 may include flash memory, one or more magnetic hard disk drives(HDDs), or other bulk storage devices.

The processor 270 of the server 230-1 (e.g., element 26 shown in FIGS.1-13) executes an operating system (OS) 284 and one or more serverapplications 286, which may be implemented in a virtual machinehypervisor or containerized architecture. The bulk storage 282 may storeone or more databases 288 that store data structures used by the serverapplications 286 to perform respective functions. The serverapplications 286 include an application that performs jam detection andprediction, and an application that detects faults in the hydraulic tool20, and that communicates relevant information and messages to theclient device 225-1 as described below in detail.

Throughout the following description, a hydraulic tool with a hydrauliccylinder operating a jaw or blade associated with an earth movingequipment is described for example only. The teachings of the presentdisclosure apply equally to any other type of equipment including butnot limited to a stationary shear, a crusher, and so on, which can begenerally referred to as a machine.

FIG. 17 shows a functional block diagram of a jam detection system 300according to the present disclosure. The system 300 comprises a dataacquisition module 302, a data processing module 304, a filter 306, astatistical analysis module 308, a jam detection module 310, and amessaging module 312. For example, the system 300 may be implemented inthe server 230 shown in FIG. 16.

The data acquisition module 302 acquires a time series data regardingbore pressure and rod pressure from the hydraulic pressure sensors(e.g., elements 22 in FIGS. 1-13) monitoring the hydraulic cylinder ofthe hydraulic tool 20 that operates the blades 50 associated with theearth mover (e.g., element 21 shown in FIGS. 1-13). For example, thedata acquisition module 302 implemented in the server 230 includes areceiver (e.g., the network interface 278 of the server 230 shown inFIG. 16) to receive the time series data from the client device 220 suchas the hydraulic tool 20.

The data processing module 304 divides the time series data into aplurality of windows of a predetermined duration. The data processingmodule 304 identifies times at which bore pressure and rod pressure peakin the windows. The data processing module 304 determines durationsbetween successive pairs of bore and rod pressure peaks, where in eachpair, a rod pressure peak follows a bore pressure peak. These durationsare called peak to peak times throughout the present disclosure.Additionally, the data processing module 304 may determine area underthe curve for the rod pressure from the moment when the rod pressurespikes up to the moment when the rod pressure spikes down.

Throughout the present disclosure, the peak to peak times and area underthe curve are described as the features used for jam detection andprediction. However, additional features such as maximum bore and rodpressures, window length (i.e., duration), rod pressure spike up timestamp, bore pressure spike down time stamp, and time stamps of first andlast points used to calculate the area under the curve for the rodpressure may be similarly analyzed for jam detection and prediction.

The jam detection module 310 uses a statistical model implemented by thestatistical analysis module 308 and detects, based on the statisticalanalysis performed by the statistical analysis module 308, a jamming ofthe blades 50 when the durations (i.e., the peak to peak times) are lessthan or equal to a predetermined threshold. Using the statistical model,the jam detection module 310 also detects a probability of the blades 50jamming when the durations (i.e., the peak to peak times) between thesuccessive pairs of bore and rod pressure peaks decrease with time(i.e., progressively occur closer together in time).

For example, FIGS. 18-20 show few examples of durations betweensuccessive pairs of bore and rod pressure peaks that progressivelydecrease with time. Additional examples may be used. For example, theduration between the bore and rod pressure peaks in FIG. 18 is greaterthan that in FIG. 19, which is greater than that in FIG. 20. Thus, fromFIG. 18 to FIG. 19, durations between successive pairs of bore and rodpressure peaks decrease with time. The decrease in the durations fromFIG. 18 to FIG. 19 (and additional similar data) indicates that a jam isprobable, and the almost coinciding bore and rod peaks (i.e., a rod peakimmediately following a bore peak) in FIG. 20 indicates an occurrence ofa jam.

Additionally or alternatively, the jam detection module 310 may detectthe jamming of the blades 50 by similarly analyzing the area under thecurve for the rod pressure. For example, the jam detection module 310may detect the jamming of the blades 50 when the area under the curvefor the rod pressure is greater than or equal to a predetermined value.The jam detection module 310 may detect the probability of the blades 50jamming when the area under the curve for successive rod pressure curvesprogressively increases with time.

The filter 306 filters, from the successive pairs of bore and rodpressure peaks, pairs with peak to peak durations greater than or equalto a predetermined duration. The filter 306 also filters, from the areaunder the curve for the rod pressure curves, areas greater than or equalto a predetermined area. The jam detection module 310 may operatewithout using rolling windows or may operate using a rolling window ifthe window size is relatively large. The filter 306 may also filterwindows longer than a predetermined duration. The filtering eliminatesoutliers that can skew the jam detection results. The jam detectionmodule 310 performs anomaly detection and identifies a jam and aprobability of a jam before the jam can occur.

The statistical analysis module 308 generates mean, standard deviation,and Z scores based on the durations between successive pairs of bore androd pressure peaks. The statistical analysis module 308 detects thejamming of the blades 50 and/or the probability of the blades 50 jammingbased on the Z scores. The statistical analysis module 308 generates theZ score using values of the peak to peak durations that are less thanthe mean value of the durations (i.e., the anomaly detection isperformed on the negative side or below the mean for the selectedfeatures such as peak to peak time and/or area under the curve).Additionally or alternatively, the statistical analysis module 308 mayperform similar analysis using the area under the curve feature. Forexample, the statistical analysis module 308 may generate the Z scoreusing values of the areas under the curve that are less than a meanvalue of the areas.

The messaging module 312 includes a transmitter to transmit a messageindicating the jamming of the blades 50 and the probability of theblades 50 jamming to a computing device such as a smartphone (e.g., theclient device 225). Based on the message, the user of the computingdevice can initiate a preventive action to prevent a jam if the messageindicates that a jam is probable but has not yet occurred. If themessage indicates that a jam has occurred or is imminent, the user caninitiate a corrective action to rectify the jamming problem by servicingthe blades 50 (e.g., by adjusting the gap between the blades 50), or byreplacing the blades 50.

The messaging module 312 may generate messages indicating differentseverity levels of the detections by using a combination of featuressuch as the peak to peak times and the area under the curve as follows.For example, the messaging module 312 may send a first message with afirst severity level if the peak to peak duration is less than or equalto a first threshold or if the area under the curve is greater than orequal to the second threshold. The messaging module 312 may send asecond message with a second severity level if both the peak to peakduration is less than or equal to the first threshold and if the areaunder the curve is greater than or equal to the second threshold, wherethe second severity level is greater than the first severity level.

FIGS. 21-28 illustrate various methods for performing jam detection andgap maintenance. These methods can be performed by one or more elementsof the system 300 described above with reference to FIGS. 17-20. Thesemethods can be implemented by the server applications 286 in the server230 shown in FIG. 16, which can be implemented in a cloud (e.g., element24 shown in FIGS. 1-13). Before explaining these methods in detail, abrief outline of these methods follows. Briefly, FIG. 21 illustrates thebroadest method for performing jam detection and gap maintenance. FIG.22 illustrates an anomaly detection method. FIGS. 23 and 24 respectivelyillustrate jam detection and jam prediction methods. FIG. 25 illustratesa method for scoring the messages (e.g., scoring alarms/alerts). FIG. 26illustrates a method for labeling data according to the presentdisclosure. FIG. 27 illustrates a method for detecting a jam using aclassifier trained using machine learning. FIG. 28 illustrates a methodof further training the classifier. These methods are not mutuallyexclusive and can be performed in combination to the extent thecombination is feasible. These methods are now described in detail.

FIG. 21 shows a broad method 400 for detecting or predicting the jammingof the blades 50. At 402, the method 400 collects time series dataregarding bore and rod pressures from respective sensors (e.g., elements22 shown in FIGS. 1-13) associated with a hydraulic cylinder of ahydraulic tool (e.g., element 20 shown in FIGS. 1-13). At 404, themethod 400 divides the time series data into multiple time windows of apredetermined duration. At 406, the method 400 analyzes the time seriesdata in a plurality of windows using a statistical model. At 408, themethod 400 detects a jam or likelihood of a jam based on the statisticalanalysis.

FIG. 22 shows a method for 450 for detecting anomalies based on Zscores. At 452, the method 450 collects time series data regarding boreand rod pressures from respective sensors (e.g., elements 22 shown inFIGS. 1-13) associated with a hydraulic cylinder of a hydraulic tool(e.g., element 20 shown in FIGS. 1-13). At 454, the method 450 dividesthe time series data into multiple time windows of durations less thanor equal to a predetermined duration, and filters out windows longerthan the predetermined duration.

At 456, the method 450 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 458, the method450 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 460, the method 450 calculates the Z scores for each feature usingobserved values of the features that are below a mean value. At 462, themethod 450 detects anomalies based on the Z scores.

FIG. 23 shows a method 500 for detecting a jam condition. At 502, themethod 500 collects time series data regarding bore and rod pressuresfrom respective sensors (e.g., elements 22 shown in FIGS. 1-13)associated with a hydraulic cylinder of a hydraulic tool (e.g., element20 shown in FIGS. 1-13). At 504, the method 500 divides the time seriesdata into multiple time windows of durations less than or equal to apredetermined duration, and filters out windows longer than thepredetermined duration.

At 506, the method 500 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 508, the method500 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 510, the method 500 determines whether the peak to peak distancebetween consecutive or successive bore and rod pressure peaks is lessthan a threshold. The method 500 returns to 502 if the peak to peakdistance between consecutive or successive bore and rod pressure peaksis not less than the threshold. The method 500 proceeds to 512 if thepeak to peak distance between consecutive or successive bore and rodpressure peaks is less than the threshold. At 512, the method 500detects a jam condition since the peak to peak distance betweenconsecutive or successive bore and rod pressure peaks is less than thethreshold. The method 500 may detect a jam condition by similarlyanalyzing the area under the curve feature.

FIG. 24 shows a method 550 for detecting a pre-jam (i.e., a likelihoodof a jam) condition. At 552, the method 550 collects time series dataregarding bore and rod pressures from respective sensors (e.g., elements22 shown in FIGS. 1-13) associated with a hydraulic cylinder of ahydraulic tool (e.g., element 20 shown in FIGS. 1-13). At 554, themethod 550 divides the time series data into multiple time windows ofdurations less than or equal to a predetermined duration, and filtersout windows longer than the predetermined duration.

At 556, the method 550 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 558, the method550 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 560, the method 550 determines whether the peak to peak distancebetween consecutive or successive bore and rod pressure peaks isprogressively decreasing. The method 550 returns to 552 if the peak topeak distance between consecutive or successive bore and rod pressurepeaks is not progressively decreasing. The method 550 proceeds to 556 ifthe peak to peak distance between consecutive or successive bore and rodpressure peaks is progressively decreasing. At 562, the method 560detects a pre-jam (i.e., a likelihood of a jam) condition since the peakto peak distance between consecutive or successive bore and rod pressurepeaks is progressively decreasing. The method 550 may detect a pre-jam(i.e., a likelihood of a jam) condition by similarly analyzing the areaunder the curve feature.

FIG. 25 shows a method 600 for indicating a severity level or severityscore of a detected anomalous condition using a combination of features.At 602, the method 600 collects time series data regarding bore and rodpressures from respective sensors (e.g., elements 22 shown in FIGS.1-13) associated with a hydraulic cylinder of a hydraulic tool (e.g.,element 20 shown in FIGS. 1-13). At 604, the method 600 divides the timeseries data into multiple time windows of durations less than or equalto a predetermined duration, and filters out windows longer than thepredetermined duration.

At 606, the method 600 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 608, the method600 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 610, the method 600 calculates a Z score for each feature usingobserved values for the feature below a mean value of the future. At612, based on the Z scores, the method 600 determines if both the peakto peak times and the area under the curve are anomalous by comparingthem with their respective thresholds as described above. The method 600proceeds to 614 if both the peak to peak times and the area under thecurve are anomalous. The method proceeds to 616 and if both the peak topeak times and the area under the curve are not anomalous.

At 614, the method 600 generates an alarm with a high severity scoresince both the peak to peak times and the area under the curve areanomalous, and the method 600 ends.

At 616, the method 600 determines if the peak to peak times areanomalous or if the area under the curve is anomalous. The method 600proceeds to 618 if the peak to peak times are anomalous or if the areaunder the curve is anomalous. The method 600 ends if neither the peak topeak times are anomalous nor the area under the curve is anomalous.

At 618, the method 600 generates an alarm with a low severity scoresince only one of the peak to peak times or the area under the curve areanomalous, and the method 600 ends.

FIG. 26 shows a method 650 for labeling features and training aclassifier using label features. At 652, the method 650 collects timeseries data regarding bore and rod pressures from respective sensors(e.g., elements 22 shown in FIGS. 1-13) associated with a hydrauliccylinder of a hydraulic tool (e.g., element 20 shown in FIGS. 1-13). At654, the method 650 divides the time series data into multiple timewindows of durations less than or equal to a predetermined duration, andfilters out windows longer than the predetermined duration.

At 656, the method 650 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 658, the method650 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 660, the method 650 selects a batch of M windows, where M is aninteger greater than one. At 662, the method 650 identifies a first jampattern or a second jam pattern as follows. The method 650 identifies afirst jam pattern if at least half of the M windows indicate that therod pressure is greater than a predetermined value, and that the peak tothe times are less than a predetermined value. The method 650 identifiesa second jam pattern if at least N of M windows indicate that the peakto peak values are less than a predetermined value, and that one windowindicates that an opening time of the blades 50 is greater than apredetermined value.

At 664, the method 650 determines whether a first jam pattern or asecond jam pattern is present (i.e., detected). The method 650 proceedsto 666 if a first jam pattern or a second jam pattern is present (i.e.,detected). The method 650 and if neither the first jam pattern nor thesecond jam pattern is present (i.e., detected).

At 666, the method 650 labels the features in the windows with the firstor the second jam pattern as indicating a jam. At 668, the method 650trains a classifier using the labeled features to identify data, that issimilar to the data found in the windows with the first or the secondjam pattern, as data indicative of a jam, and the method 650 ends.

FIG. 27 shows a method 700 for detecting a jam using a classifiertrained as described with reference to FIG. 26. At 702, the method 700collects time series data regarding bore and rod pressures fromrespective sensors (e.g., elements 22 shown in FIGS. 1-13) associatedwith a hydraulic cylinder of a hydraulic tool (e.g., element 20 shown inFIGS. 1-13). At 704, the method 700 divides the time series data intomultiple time windows of durations less than or equal to a predeterminedduration, and filters out windows longer than the predeterminedduration.

At 706, the method 700 identifies features including peak to peak timesbetween consecutive bore and rod pressure peaks, and area under thecurve for rod pressure from spike up to spike down. At 708, the method700 filters out (i.e., excludes) peak to peak times greater than apredetermined value, and area under the curve greater than apredetermined value.

At 710, the method 700 feeds the filtered features to a classifiertrained to detect a jam based on the features. At 712, the method 700determines if the trained classifier detects a jam based on thefeatures. The method 700 returns to 702 if the trained classifier doesnot detect a jam based on the features. The method 700 ends if thetrained classifier detects a jam based on the features. At this point amessage indicating the detected jam may be sent.

FIG. 28 shows a method 750 for verifying the operation of a classifiertrained using machine learning (called ML classifier; e.g., trained asdescribed with reference to FIG. 26 above). At 752, the method 750receives a prediction from a trained classifier (e.g., predictiongenerated as described with reference to FIG. 27 above).

At 754, the method 750 determines whether the prediction received fromthe ML classifier matches the prediction generated by a statisticalmodel (e.g., the statistical model used by the system 300 described withreference to FIG. 17 above). The method 750 proceeds to 756 if theprediction received from the ML classifier does not match the predictiongenerated by a statistical model. The method 750 proceeds to 758 if theprediction received from the ML classifier matches the predictiongenerated by a statistical model.

At 756, the method 750 continues to train the ML classifier, and themethod returns to 752. At 758, the method 750 uses the predictionsreceived from the ML classifier with high confidence, and the method 750ends.

In addition to the jam detection system and methods described above withreference to FIGS. 17-28, the present disclosure provides a system and amethod for monitoring the wear of a hydraulic tool (e.g. hydraulicallyactuated jaws) using only pressure sensors. When a hydraulic tool is new(or has been newly serviced), various hydraulic system pressures arerecorded during piston movement. Then during the tool life-cycle,similar measurements are recorded during piston movement and comparedwith the initially collected data to monitor changes in absolute anddifferential pressures (ΔP) that are indicative of failures and longterm wear trends.

The following systems and methods described with reference to FIGS.29-33 monitor and detect faults associated with the hydraulic tool 20such as hydraulic leakage, mechanical wear, friction, and so on asexplained below in detail. FIGS. 29-31 illustrate an example of a systemdetecting faults associated with the hydraulic tool 20. FIGS. 32 and 33illustrate examples of methods for detecting faults associated with thehydraulic tool 20. The systems and methods for detecting faultsassociated with the hydraulic tool 20 shown in FIGS. 29-33 can beimplemented in the distributed computing system shown in FIGS. 14-16.First, a brief overview of the systems and methods for detecting faultsassociated with the hydraulic tool 20 is provided. Thereafter, thesystems and methods are described in detail with reference to FIGS.29-33.

Briefly, hydraulic cylinders apply work energy to complete a task.Hydraulic cylinders need regular maintenance and servicing to ensurethat they are functioning optimally. The present disclosure relates to asystem and a method that allow real time monitoring of performance of ahydraulic system and identification of abnormal conditions such asleaking internal or external seals and increased mechanical wear orfriction. The system and method utilize bore and rod pressure sensors 22on either side of the hydraulic cylinder to sense hydraulic pressures inreal time, and the processor 36 to measure the data and store theresults locally in the memory 38 or transmit to a remote system in thecloud 24 for processing.

When installed and periodically thereafter (e.g., when serviced), thefault detection system performs a calibration procedure generally calleda stall test to establish a performance baseline. During subsequenttests performed periodically after some amount of use of the hydraulictool 20, the fault detection system compares the current test values tothe baseline test values and determines based on the comparison whethermechanical friction has increased during the cylinder's operation orhydraulic fluid is potentially leaking past the internal seals and downthe return line. The stall test includes a procedure to stall open thejaws or the blades 50 for a nominal period (e.g., initially 10 seconds),then close the jaws or the blades 50 for a nominal period (e.g.,initially 10 seconds), and rapidly sample (e.g., initially at 10 Hz)corresponding hydraulic pressure sensors 22 and record the entire eventlocally or at a remote fault detection system in the cloud 24.

Other methods can be used to detect fault conditions such as leakageincluding flow meters, pressure sensors, tank volume sensors, and more.These methods, however, tend to have limitations on detecting increasesin mechanical wear and detecting leakage past the hydraulic cylinder.For example, these methods detect leaks or large changes in pressure orflow whereas the fault detection system of the present disclosuredetects relatively small changes in friction or energy to move thehydraulic cylinder, which can indicate increases in mechanical frictiondue to wear or lack of maintenance. The other methods may detect leakagepast the cylinder with a flow meter. However, in high pressure hydrauliccircuits (e.g., those in the hydraulic tool 20), this task is difficultdue to the pressures involved. Flow meters designed to function withsuch pressures (more than 5000 psi) are not cost effective and do notfunction well across a wide range of flow conditions. In contrast, thefault detection system can detect leakage past the hydraulic cylinderwithout a flow meter.

The fault detection system of the present disclosure uses rod and borepressure sensors (elements 22 shown in FIGS. 1-13) to detect pressuresin real time. On the hydraulic tool 20, the processor 36 measures andprocesses the sensed pressures in real time and saves them locally inthe memory 38 or transmits them to the fault detection system in thecloud 24 for processing. A server (e.g., element 230 shown in FIGS.14-16) implements the fault detection system that stores and managestest profiles and performs test comparisons as explained below indetail. A smartphone app operates in conjunction with the faultdetection system in the cloud 24 and provides a user interface (e.g.,element 37 shown in FIGS. 1-13) to observe results and receive alertmessages. Specifically, bore side and rod side pressures are measured byhydraulic pressure sensors 22, which are sampled in real time by theprocessor 36. This information is stored locally in the memory 38 ortransmitted to the fault detection system in the cloud 24 as describedbelow. A user interfaces with the data using the app on a smartphone ora computing device (e.g., the client device 225 shown in FIGS. 14-16).These and other features of the fault detection system are now describedbelow in detail.

FIGS. 29-33 illustrate examples of a system and a method for detectingfaults in the hydraulic cylinder associated with the hydraulic tool 20in accordance with the present disclosure. FIG. 29 shows the faultdetection system which is described with reference to a schematic of ahydraulic cylinder shown in FIG. 30 and a graph of bore and rodpressures shown in FIG. 31. FIG. 32 shows the fault detection methodthat can be performed at the hydraulic tool 20 by one or more elementsof the fault detection system shown in FIG. 29. FIG. 33 shows the faultdetection method that can be performed in the cloud 24 by one or moreelements of the fault detection system shown in FIG. 29.

FIG. 29 shows a system 800 for detecting faults in a hydraulic systemsuch as the hydraulic tool 20, which is schematically shown as ahydraulic tool 802. For example, the hydraulic tool 802 comprises ahydraulic cylinder 804, which comprises a bore 820 and a rod 830 asschematically shown in FIG. 30. The hydraulic tool 802 comprises sensors806 similar to hydraulic pressure sensors 22 shown in FIGS. 1-13 thatsense hydraulic pressures of the hydraulic cylinder 804. For example, arod side pressure sensor 806-1 and a bore side pressure sensor 806-2(collectively the sensors 806) shown in FIG. 30 respectively sense rodand bore pressures.

The hydraulic tool 802 comprises a processor 808 (e.g., elements 36 and38 shown in FIGS. 1-13) that processes (e.g., samples) the data receivedfrom the sensors 806 as described below. The processor 808 analyzes thedata and detects faults associated with the hydraulic cylinder 804 basedon the analyses as explained below. The hydraulic tool 802 comprisesactuators 810 that operate the hydraulic cylinder 804 (e.g., during thestall test). The processor 808 may control the actuators 810 thatoperate the hydraulic cylinder 804 (e.g., during the stall test). Anoperator of the hydraulic tool 802 initiate the stall test.

The hydraulic tool 802 comprises a transmitter 812 that communicateswith the distributed communications system 210 (shown and described indetail with reference to FIGS. 14-16 above) via the antenna 32 shown inFIGS. 1-13. For example, the transmitter 812 transmits the data sensedby the sensors 806 and processed by the processor 808 to a remotecomputing device 840 (e.g., the server 230 shown in and described withreference to FIGS. 14-16 above) that can also perform fault detection asdescribed below.

In some implementations, the fault detection is entirely performed atthe hydraulic tool 802, and the indication of the detected fault alongwith the baseline data are transmitted to the cloud 24. In someimplementations, the fault detection is entirely performed at remotecomputing device 840 in the cloud 24 based on the sensor data receivedfrom the hydraulic tool 802, and the indication of the detected fault istransmitted to the mobile device 850. In some implementations, the faultdetection is partially performed at each of the hydraulic tool 802 andthe remote computing device 840 in the cloud 24, and the indication ofthe detected fault is transmitted to the mobile device 850. Accordingly,in the following description, the processing steps are indicated asbeing performed at either the hydraulic tool 802 or the remote computingdevice 840. It should be understood that the processing steps describedbelow as being performed at the remote computing device 840 can also beperformed at the hydraulic tool 802, and vice versa.

The remote computing device 840 comprises a processor 842 (e.g.,elements 26 and 28 shown in FIGS. 1-13; elements 270 and 280 shown inFIGS. 14-16) and a transceiver 844 (e.g., element 278 shown in FIGS.14-16). The transceiver 844 receives the data processed by the processor808 of the hydraulic tool 802. The processor 842 analyzes the datareceived by the transceiver 844 and detects faults associated with thehydraulic cylinder 804 based on the analyses as explained below indetail. The transceiver 844 transmits messages including the faultindications to the mobile device 850 via the distributed communicationssystem 210. The mobile device 850 displays the messages on a userinterface (e.g., element 37 shown in FIGS. 1-13).

The fault detection performed by the system 800 is described in detailwith reference to FIGS. 32 and 33 below. Before that, the operation ofthe hydraulic cylinder 804 and the method of performing a stall test aredescribed below with reference to FIG. 31.

FIG. 31 schematically illustrates the pressure values detected by thesensors 806 as the piston of the hydraulic cylinder 804 is driven fromright to left (e.g., for causing a pair of hydraulic jaws or blades 50to open or close) during a stall test. At first, the rod side of thehydraulic cylinder 804 is vented to the hydraulic return line, and therod side begins an immediate and fast decrease in pressure. At the sametime, the bore side is connected to the hydraulic supply and begins animmediate rise in pressure. The two pressures soon cross as seen in FIG.31. When the bore side pressure is sufficiently greater than the rodside pressure, the piston starts to move. At mid stroke, the pressurizedbore side (thick line shown in FIG. 31) is at a greater pressure thanthe vented rod side (thin line shown in FIG. 31). The difference insupply and return pressure at mid stroke (ΔP) is labeled asn_(mechanical) and is proportional to the friction (from whateversources) in moving the piston and other features of the hydraulic tool(e.g., the jaws or blades 50 shown in FIGS. 1-13). When the pistonapproaches maximum left displacement, the pressure of the bore side(thick line shown in FIG. 31) increases rapidly to full/maximumpressure, whereas the pressure of the vented rod side (thin line shownin FIG. 31) decreases to near zero as the vented hydraulic fluid isexhausted, and the return line empties.

The solid thick and thin lines recorded during the stall test describedabove represent the baseline/new measurements. The dotted linesrepresent a mid-life stall test of the same parameters. With referenceto the dotted circle shown in FIG. 31, the vented bore side shows inbroken line a non-zero pressure n_(hyd) greater than baseline due to thepresence of some hydraulic fluid in the return lines from leakage aroundthe piston or other seals. With reference to the dotted oval shown inFIG. 31, the vented rod side broken line shows a non-zero pressuren_(hyd) greater than baseline due to the presence of some hydraulicfluid in the return lines from leakage around the piston or other seals.

In mid stroke, the mid-life test, indicated by dotted lines parallel tothe thick lines, shows an increased bore/supply pressure and anincreased differential (ΔP)=n_(mechanical) attributable to a number ofwear factors.

During the initial stall test, similar pressure curves are recorded uponmoving the piston from left to right and similarly compared withpressure data collected during hydraulic tool use for monitoringhydraulic tool wear.

Accordingly, FIG. 31 shows pressure curves that provide the followingdata for fault detection: n_(mechanical)—baseline test compared tocurrent test provides the change in energy required to move thehydraulic cylinder due to wear or poor mechanical service; andn_(hyd)—baseline test compared to current test provides the change inhydraulic pressure and fluid leaking past the internal seals or othercomponents.

Notably, the fault detection system of the present disclosure is astand-alone system that is located on the hydraulic tool 20 and thatreports to the user without relying on, going through, or beingconnected to the prime mover's computing and control systems. The faultdetection system monitors hydraulic system parameters, analyzes theparameters in the cloud (not onboard the machine or in a prime movermounted CPU), and transmits reports/alerts and other messages to theusers' computing devices such as smartphones.

More specifically, in an implementation in which the fault detection isperformed at the computing device 840, the transceiver 844 receives datavia the distributed communications system 210 from the first sensor806-2 sensing pressure on the bore side of the hydraulic cylinder 804associated with a hydraulic tool 802 and from the second sensor 806-1sensing pressure on the rod side of the hydraulic cylinder 804associated with the hydraulic tool 802. The data includes multiplesamples of the pressures taken during each of first and second testoperations (e.g., stall tests) performed by the hydraulic cylinder 804at first and second times, respectively.

The processor 842 determines first baseline values of the pressures onthe bore side and the rod side of the hydraulic cylinder 804 based onthe data received from the first and second sensors 806 during the firsttest operation performed by the hydraulic cylinder 804 at the firsttime. Subsequently, after some use of the hydraulic tool 802, theprocessor 842 determines second baseline values of the pressures on thebore side and the rod side of the hydraulic cylinder 804 based on thedata received from the first and second sensors 806 during the secondtest operation performed by the hydraulic cylinder 804 at the secondtime, which is later than the first time.

The processor 842 detects an abnormality associated with the hydrauliccylinder 804 based on the first and second baseline values of thepressures on the bore side and the rod side of the hydraulic cylinder804. The processor 842 detects the abnormality based on whether thedifferences between the first and second baseline values are greaterthan or equal to predetermined thresholds. The abnormality includes oneor more of a fluid leakage, mechanical wear, and friction associatedwith the hydraulic cylinder 804. The transceiver 844 transmits a messageto the mobile device 850 via the distributed communications system 210indicating detection of the abnormality associated with the hydrauliccylinder 804.

At the hydraulic tool 802, the first sensor 806-2 is arranged in anenclosure (e.g., element 30 shown in FIGS. 1-13) located on thehydraulic tool 802 to sense pressure on the bore side of the hydrauliccylinder 804 associated with the hydraulic tool 802. The second sensor806-1 is arranged in the enclosure (e.g., element 30 shown in FIGS.1-13) located on the hydraulic tool 802 to sense pressure on the rodside of the hydraulic cylinder 804 associated with the hydraulic tool802.

The transmitter 812 is arranged in the enclosure (e.g., element 30 shownin FIGS. 1-13) located on the hydraulic tool 802 to transmit data to thedistributed communications system 210 when the first and second stalltests are performed by the hydraulic cylinder 804 at first and secondtimes, respectively. The processor 808 is arranged in the enclosure(e.g., element 30 shown in FIGS. 1-13) located on the hydraulic tool 802to sample the pressures sensed by the first and second sensors 806multiple times during each of the first and second test operationsperformed by the hydraulic cylinder 804 at first and second times,respectively.

The transmitter 812 transmits the samples generated by the processor 808to the remote computing device 840 via the distributed communicationssystem 210 for detecting an abnormality associated with the hydrauliccylinder 804 based on the samples, where the abnormality includes one ormore of a fluid leakage, mechanical wear, and friction associated withthe hydraulic cylinder.

As explained above, the remote computing device 840 determines firstbaseline values of the pressures on the bore side and the rod side ofthe hydraulic cylinder 804 based on the samples collected during thefirst test operation (e.g., first stall test) performed by the hydrauliccylinder 804 at the first time. The remote computing device 840determines second baseline values of the pressures on the bore side andthe rod side of the hydraulic cylinder 804 based on the data collectedduring the second test operation (e.g., second stall test) performed bythe hydraulic cylinder 804 at the second time.

The remote computing device 840 detects the abnormality associated withthe hydraulic cylinder 804 based on whether the differences between thefirst and second baseline values are greater than or equal topredetermined thresholds. The remote computing device 840 transmits amessage to the mobile device 850 via the distributed communicationssystem 210 indicating the detection of the abnormality associated withthe hydraulic cylinder 804.

In an implementation in which the fault detection is performed at thehydraulic tool 802, the processor 808 samples data received from thefirst sensor 806-2 sensing pressure on the bore side of the hydrauliccylinder 804 associated with a hydraulic tool 802 and from the secondsensor 806-1 sensing pressure on the rod side of the hydraulic cylinder804 associated with the hydraulic tool 802. The processor 808 takesmultiple samples of the pressures during each of first and second testoperations (e.g., stall tests) performed by the hydraulic cylinder 804at first and second times, respectively.

The processor 808 determines first baseline values of the pressures onthe bore side and the rod side of the hydraulic cylinder 804 based onthe data received from the first and second sensors 806 during the firsttest operation performed by the hydraulic cylinder 804 at the firsttime. Subsequently, after some use of the hydraulic tool 802, theprocessor 808 determines second baseline values of the pressures on thebore side and the rod side of the hydraulic cylinder 804 based on thedata received from the first and second sensors 806 during the secondtest operation performed by the hydraulic cylinder 804 at the secondtime, which is later than the first time.

The processor 808 detects an abnormality associated with the hydrauliccylinder 804 based on the first and second baseline values of thepressures on the bore side and the rod side of the hydraulic cylinder804. The processor 808 detects the abnormality based on whether thedifferences between the first and second baseline values are greaterthan or equal to predetermined thresholds. The abnormality includes oneor more of a fluid leakage, mechanical wear, and friction associatedwith the hydraulic cylinder 804. The transmitter 812 transmits a messageto the remote computing device 850 (or to the mobile device 850) via thedistributed communications system 210 indicating detection of theabnormality associated with the hydraulic cylinder 804.

FIG. 32 shows a method 900 for fault detection. For example, one or moreelements of the system 800 can perform the method 900. In the method900, the fault detection is performed at the hydraulic tool 802. Amethod for performing fault detection at the remote computing device 840in the cloud 24 is described below with reference to FIG. 33. Note thatin some implementations, some operations associated with the faultdetection may be performed at the hydraulic tool 802, and some otheroperations associated with the fault detection may be performed at theremote computing device 840 in the cloud 24.

At 902, the method 900 determines whether the hydraulic cylinder isnewly installed or serviced. The method 900 proceeds to 904 if thehydraulic cylinder is newly installed or serviced.

At 904, the method 900 performs a first stall test at a first time usingthe processor 808 (e.g., element 36 shown in FIGS. 1-13) onboard thehydraulic tool 802 (e.g., element 20 shown in FIGS. 1-13). At 906, themethod 900 senses first bore and rod side pressures using the sensors806 (e.g., elements 22 shown in FIGS. 1-13) onboard the hydraulic tool802. At 908, the method 900 samples the sensed data during the firststall test using the processor 808.

At 912, at the hydraulic tool 802, the method 900 determines firstbaseline values of bore side and rod side pressures based on the firstsampled data. At 914, the method 900 then allows the hydraulic tool 802to be used to perform normal operations.

At 916, after the hydraulic tool 802 is used for some time, the method900 performs a second stall test at a second time using the processor808 (e.g., element 36 shown in FIGS. 1-13) onboard the hydraulic tool802 (e.g., element 20 shown in FIGS. 1-13). At 918, the method 900senses second bore and rod side pressures using the sensors 806 (e.g.,elements 22 shown in FIGS. 1-13) onboard the hydraulic tool 802. At 920,the method 900 samples the sensed data during the second stall testusing the processor 808. At 924, at the hydraulic tool 802, the method900 determines second baseline values of bore side and rod sidepressures based on the second sampled data.

At 926, at the hydraulic tool 802, the method 900 determines differencesbetween the first and second baseline values of bore and rod sidepressures. At 928, the method 900 determines whether the differences aregreater than or equal to respective thresholds. The method 900 returnsto 914 if the differences are not greater than or equal to therespective thresholds. The method 900 proceeds to 930 if the differencesare greater than or equal to the respective thresholds.

At 930, the method 900 detects an abnormality (i.e., a fault such asleakage, friction, wear, and so on) associated with the hydrauliccylinder 804 since the differences between the first and second baselinevalues of bore and rod side pressures are greater than or equal to therespective thresholds. At 932, the method 900 transmits a messageindicating the detected abnormality so that the user can performappropriate corrective action such as servicing or replacing thehydraulic cylinder 804, and the method 900 returns to 902. For example,the method 900 transmits the message to the remote computing device 840or the mobile device 850 via the distributed communications system 210(e.g., using the transceiver 812 and the antenna 32 shown in shown inFIGS. 1-13).

FIG. 33 shows a method 950 for fault detection. For example, one or moreelements of the system 800 can perform the method 950. In the method950, the fault detection is performed at the remote computing device 840based on the data received from the hydraulic tool 802 as follows.

At 952, the method 950 determines whether the hydraulic cylinder isnewly installed or serviced. The method 950 proceeds to 950 if thehydraulic cylinder is newly installed or serviced.

At 954, the method 950 performs a first stall test at a first time usingthe processor 808 (e.g., element 36 shown in FIGS. 1-13) onboard thehydraulic tool 802 (e.g., element 20 shown in FIGS. 1-13). At 956, themethod 950 senses first bore and rod side pressures using the sensors806 (e.g., elements 22 shown in FIGS. 1-13) onboard the hydraulic tool802. At 958, the method 950 samples the sensed data during the firststall test using the processor 808. At 960, the method 950 transmits thefirst sampled data to the remote computing device 840 via thedistributed communications system 210 (e.g., using the transceiver 812and the antenna 32 shown in shown in FIGS. 1-13).

At 962, at the remote computing device 840, the method 950 determinesfirst baseline values of bore side and rod side pressures based on thefirst sampled data received from the hydraulic tool 802. At 964, themethod 900 then allows the hydraulic tool 802 to be used to performnormal operations.

At 966, after the hydraulic tool 802 is used for some time, the method950 performs a second stall test at a second time using the processor808 (e.g., element 36 shown in FIGS. 1-13) onboard the hydraulic tool802 (e.g., element 20 shown in FIGS. 1-13). At 968, the method 950senses second bore and rod side pressures using the sensors 806 (e.g.,elements 22 shown in FIGS. 1-13) onboard the hydraulic tool 802.

At 970, the method 950 samples the sensed data during the second stalltest using the processor 808. At 972, the method 950 transmits thesecond sampled data to the remote computing device 840 via thedistributed communications system 210 (e.g., using the transceiver 812).At 974, at the remote computing device 840, the method 950 determinessecond baseline values of bore side and rod side pressures based on thesecond sampled data received from the hydraulic tool 802.

At 976, the method 950 determines differences between the first andsecond baseline values of bore and rod side pressures at the remotecomputing device 840. At 978, the method 950 determines whether thedifferences are greater than or equal to respective thresholds. Themethod 950 returns to 964 if the differences are not greater than orequal to the respective thresholds. The method 950 proceeds to 980 ifthe differences are greater than or equal to the respective thresholds.

At 980, the method 950 detects an abnormality (i.e., a fault such asleakage, friction, wear, and so on) associated with the hydrauliccylinder 804 since the differences between the first and second baselinevalues of bore and rod side pressures are greater than or equal to therespective thresholds. At 982, the method 950 transmits a message to themobile device 850 indicating the detected abnormality so that the usercan perform appropriate corrective action such as servicing or replacingthe hydraulic cylinder 804, and the method 950 returns to 952. Forexample, the method 950 transmits the message from the remote computingdevice 840 to the mobile device 850 via the distributed communicationssystem 210 (e.g., using the transceiver 812 and the antenna 32 shown inshown in FIGS. 1-13).

While not shown, the fault detection system can use additional onboardsensors (e.g., temperature sensors, accelerometers, and so on). Using acombination of these sensors during tool use, the hydraulic tool 802 cantransmit sensed parameters off-site (e.g., to the computing device 840in the cloud 24) for remote processing, where the processed output iscommunicated to users via their smartphones (e.g., as tool servicenotifications, alerts that the tool is being misused as determined frompressure spikes, location of the tool, how long until next service, andso on). The output communicated to the users may depend on the range ofonboard sensors and a level of subscription paid by the users (e.g.,more types of information may be communicated in proportion to a higherlevel subscription).

The foregoing description of the embodiments has been provided forpurposes of illustration and description. It is not intended to beexhaustive or to limit the disclosure. Individual elements or featuresof a particular embodiment are generally not limited to that particularembodiment, but, where applicable, are interchangeable and can be usedin a selected embodiment, even if not specifically shown or described.The same may also be varied in many ways. Such variations are not to beregarded as a departure from the disclosure, and all such modificationsare intended to be included within the scope of the disclosure.

It should be understood that one or more steps within a method may beexecuted in different order (or concurrently) without altering theprinciples of the present disclosure. Further, although each of theembodiments is described above as having certain features, any one ormore of those features described with respect to any embodiment of thedisclosure can be implemented in and/or combined with features of any ofthe other embodiments, even if that combination is not explicitlydescribed. In other words, the described embodiments are not mutuallyexclusive, and permutations of one or more embodiments with one anotherremain within the scope of this disclosure.

Spatial and functional relationships between elements (for example,between modules) are described using various terms, including“connected,” “engaged,” “interfaced,” and “coupled.” Unless explicitlydescribed as being “direct,” when a relationship between first andsecond elements is described in the above disclosure, that relationshipencompasses a direct relationship where no other intervening elementsare present between the first and second elements, and also an indirectrelationship where one or more intervening elements are present (eitherspatially or functionally) between the first and second elements. Asused herein, the phrase at least one of A, B, and C should be construedto mean a logical (A OR B OR C), using a non-exclusive logical OR, andshould not be construed to mean “at least one of A, at least one of B,and at least one of C.”

In the figures, the direction of an arrow, as indicated by thearrowhead, generally demonstrates the flow of information (such as dataor instructions) that is of interest to the illustration. For example,when element A and element B exchange a variety of information butinformation transmitted from element A to element B is relevant to theillustration, the arrow may point from element A to element B. Thisunidirectional arrow does not imply that no other information istransmitted from element B to element A. Further, for information sentfrom element A to element B, element B may send requests for, or receiptacknowledgements of, the information to element A.

In this application, including the definitions below, the term “module”or the term “controller” may be replaced with the term “circuit.” Theterm “module” may refer to, be part of, or include processor hardware(shared, dedicated, or group) that executes code and memory hardware(shared, dedicated, or group) that stores code executed by the processorhardware.

The module may include one or more interface circuits. In some examples,the interface circuits may include wired or wireless interfaces that areconnected to a local area network (LAN), the Internet, a wide areanetwork (WAN), or combinations thereof. The functionality of any givenmodule of the present disclosure may be distributed among multiplemodules that are connected via interface circuits. For example, multiplemodules may allow load balancing. In a further example, a server (alsoknown as remote, or cloud) module may accomplish some functionality onbehalf of a client module.

The term code, as used above, may include software, firmware, and/ormicrocode, and may refer to programs, routines, functions, classes, datastructures, and/or objects. Shared processor hardware encompasses asingle microprocessor that executes some or all code from multiplemodules. Group processor hardware encompasses a microprocessor that, incombination with additional microprocessors, executes some or all codefrom one or more modules. References to multiple microprocessorsencompass multiple microprocessors on discrete dies, multiplemicroprocessors on a single die, multiple cores of a singlemicroprocessor, multiple threads of a single microprocessor, or acombination of the above.

Shared memory hardware encompasses a single memory device that storessome or all code from multiple modules. Group memory hardwareencompasses a memory device that, in combination with other memorydevices, stores some or all code from one or more modules.

The term memory hardware is a subset of the term computer-readablemedium. The term computer-readable medium, as used herein, does notencompass transitory electrical or electromagnetic signals propagatingthrough a medium (such as on a carrier wave); the term computer-readablemedium is therefore considered tangible and non-transitory. Non-limitingexamples of a non-transitory computer-readable medium are nonvolatilememory devices (such as a flash memory device, an erasable programmableread-only memory device, or a mask read-only memory device), volatilememory devices (such as a static random access memory device or adynamic random access memory device), magnetic storage media (such as ananalog or digital magnetic tape or a hard disk drive), and opticalstorage media (such as a CD, a DVD, or a Blu-ray Disc).

The apparatuses and methods described in this application may bepartially or fully implemented by a special purpose computer created byconfiguring a general purpose computer to execute one or more particularfunctions embodied in computer programs. The functional blocks andflowchart elements described above serve as software specifications,which can be translated into the computer programs by the routine workof a skilled technician or programmer.

The computer programs include processor-executable instructions that arestored on at least one non-transitory computer-readable medium. Thecomputer programs may also include or rely on stored data. The computerprograms may encompass a basic input/output system (BIOS) that interactswith hardware of the special purpose computer, device drivers thatinteract with particular devices of the special purpose computer, one ormore operating systems, user applications, background services,background applications, etc.

The computer programs may include: (i) descriptive text to be parsed,such as HTML (hypertext markup language), XML (extensible markuplanguage), or JSON (JavaScript Object Notation) (ii) assembly code,(iii) object code generated from source code by a compiler, (iv) sourcecode for execution by an interpreter, (v) source code for compilationand execution by a just-in-time compiler, etc. As examples only, sourcecode may be written using syntax from languages including C, C++, C#,Objective-C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl,Pascal, Curl, OCaml, Javascript®, HTML5 (Hypertext Markup Language 5threvision), Ada, ASP (Active Server Pages), PHP (PHP: HypertextPreprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, VisualBasic®, Lua, MATLAB, SIMULINK, and Python®.

What is claimed is:
 1. A prime mover mountable hydraulic toolcomprising: a protective box assembly housing a combination including abore-side hydraulic pressure sensor, a rod-side hydraulic pressuresensor, a control circuit, and a wireless transmitter antenna providinga communication channel to a user interface, the communication channelbeing independent of any communication channel provided by the primemover, the protective box assembly being mounted to a mounting wall; abore-side hydraulic fluid passage extending between the bore-sidehydraulic pressure sensor within the protective box assembly and acylinder bore-side block port, the bore-side hydraulic fluid passageincluding a bore-side hydraulic jump hose and a bore-side snubber; arod-side hydraulic fluid passage extending between the rod-sidehydraulic pressure sensor within the protective box assembly and acylinder rod-side block port, the rod-side hydraulic fluid passageincluding a rod-side hydraulic jump hose and a rod-side snubber; a portblock mounted within an interior of the protective box assembly, theport block providing a portion of each of the bore-side hydraulic fluidpassage and the rod-side hydraulic fluid passage, respectively, and theport block providing a replacement bore-side port and a replacementrod-side port coupled to the bore-side hydraulic fluid passage and therod-side hydraulic fluid passage, respectively, the replacementbore-side port and the replacement rod-side port replacing the cylinderbore-side block port and the cylinder rod-side block port to which thebore-side hydraulic fluid passage and the rod-side hydraulic fluidpassage are coupled, respectively; an electrical power source couplingmounted on the protective box assembly and operably coupled to transferpower to the control circuit, the wireless transmitter antenna, and thebore-side hydraulic pressure sensor and the rod-side hydraulic pressuresensor mounted within the protective box assembly.
 2. The prime movermountable hydraulic tool of claim 1, wherein the protective box assemblyincludes a first vibration dampener operably positioned between themounting wall and each of the control circuit, the bore-side hydraulicpressure sensor, the rod-side hydraulic pressure sensor, and thewireless transmitter antenna.
 3. The prime mover mountable hydraulictool of claim 2, wherein the protective box assembly includes a secondvibration dampener operably positioned between the first vibrationdampener and the control circuit.
 4. The prime mover mountable hydraulictool of claim 1, wherein the protective box assembly includes a firstcompartment to which the wireless transmitter antenna is mounted, andhaving a first compartment interior in which each of the controlcircuit, the bore-side hydraulic pressure sensor, and the rod-sidehydraulic pressure sensor are mounted.
 5. The prime mover mountablehydraulic tool of claim 4, wherein the protective box assembly includesa second compartment having a second compartment interior in which thefirst compartment is mounted.
 6. The prime mover mountable hydraulictool of claim 5, wherein the wireless transmitter antenna extendsthrough an aperture in a wall of the second compartment, and aprotective antenna cover is coupled to the wall of the secondcompartment and extends over the wireless transmitter antenna.
 7. Theprime mover mountable hydraulic tool of claim 5, wherein the protectivebox assembly includes a third compartment mounted within the firstcompartment interior, and the third compartment having a thirdcompartment interior in which the control circuit is mounted.
 8. Theprime mover mountable hydraulic tool of claim 5, wherein the protectivebox assembly includes a first vibration dampener operably positionedbetween an interior surface of the second compartment and an exteriorsurface of the first compartment, and a second vibration dampeneroperably positioned between an interior surface of the first compartmentand the control circuit.
 9. The prime mover mountable hydraulic tool ofclaim 1, wherein the port block mounted within the protective boxassembly includes a bore-side inlet port of the bore-side hydraulicfluid passage and a rod-side inlet port of the rod-side hydraulic fluidpassage, respectively, and each of the bore-side inlet port, therod-side inlet port, and the electrical power source coupling each faceoutwardly along a first common side of the protective box assembly. 10.The prime mover mountable hydraulic tool of claim 9, wherein thereplacement bore-side port and the replacement rod-side port faceoutwardly from a second common side of the protective box assembly,which second common side is adjacent the first common side.
 11. Theprime mover mountable hydraulic tool of claim 9, wherein the firstcommon side of the protective box assembly faces the mounting wall. 12.The prime mover mountable hydraulic tool of claim 11, wherein themounting wall has an opening therethrough, and each of the bore-sidehydraulic fluid passage and the rod-side hydraulic fluid passage and anelectrical power cable coupled to the electrical power source couplingpass through the opening of the mounting wall.
 13. The prime movermountable hydraulic tool of claim 1, wherein the prime mover mountablehydraulic tool includes an electrical power source that is coupled tothe electrical power source coupling, and the electrical power sourceprovides electrical power independent of any electrical power providedby the prime mover.
 14. The prime mover mountable hydraulic tool ofclaim 13, wherein the electrical power source comprises an electricalpower generation assembly including a hydraulic motor operably couplableto hydraulic lines from the prime mover to be driven by hydraulic fluidfrom the prime mover when coupled thereto, and an electrical generatordriven by the hydraulic motor to produce electricity on board the primemover mountable hydraulic tool itself.
 15. The prime mover mountablehydraulic tool of claim 1, wherein the combination housed by theprotective box assembly includes a clockwise rotation hydraulic pressuresensor and a counterclockwise rotation hydraulic pressure sensor; and aclockwise rotation hydraulic fluid passage extends between the clockwiserotation hydraulic pressure sensor within the protective box assemblyand a clockwise rotation block port, and the clockwise rotationhydraulic fluid passage includes a clockwise rotation hydraulic jumphose and a clockwise rotation snubber; and a counterclockwise rotationhydraulic fluid passage extends between the counterclockwise rotationhydraulic pressure sensor within the protective box assembly and acounterclockwise rotation block port, and the counterclockwise rotationhydraulic fluid passage includes a counterclockwise rotation hydraulicjump hose and a counterclockwise rotation snubber; and the port blockmounted within the protective box assembly provides a portion of each ofthe clockwise rotation hydraulic fluid passage and the counterclockwiserotation hydraulic fluid passage, respectively, and the port blockproviding a replacement clockwise rotation port and a replacementcounterclockwise rotation port coupled to the clockwise rotationhydraulic fluid passage and the counterclockwise rotation hydraulicfluid passage, respectively; and the electrical power source coupling isoperably coupled to transfer power to the clockwise rotation hydraulicpressure sensor and the counterclockwise rotation hydraulic pressuresensor mounted within the protective box assembly.
 16. A systemcomprising: a data acquisition module configured to acquire a timeseries data regarding bore pressure and rod pressure from sensorsmonitoring a hydraulic cylinder operating a jaw or blade associated witha machine; a data processing module configured to: divide the timeseries data into a plurality of windows of a predetermined duration;identify times at which bore pressure and rod pressure peak in thewindows; and determine durations between successive pairs of borepressure peaks and rod pressure peaks, wherein in each pair, a rodpressure peak follows a bore pressure peak; and a jam detection moduleconfigured to: detect a jamming of the jaw or blade in response to oneof the durations being less than or equal to a predetermined threshold;and detect a probability of the jaw or blade jamming in response to thedurations between the successive pairs of bore pressure peaks and rodpressure peaks decreasing with time.
 17. The system of claim 16 furthercomprising a filter configured to filter, from the successive pairs ofbore pressure peaks and rod pressure peaks, pairs with durations greaterthan or equal to a predetermined duration.
 18. The system of claim 16further comprising a statistical analysis module configured to: generatea Z score based on the durations between the successive pairs of borepressure peaks and rod pressure peaks; and detect at least one of thejamming of the jaw or blade and the probability of the jaw or bladejamming based on the Z score.
 19. The system of claim 18 wherein thestatistical analysis module is further configured to generate the Zscore using values of the durations that are less than a mean of thedurations.
 20. The system of claim 16 further comprising a transmitterconfigured to transmit a message indicating at least one of the jammingof the jaw or blade and the probability of the jaw or blade jamming to acomputing device.
 21. The system of claim 16 wherein: the dataprocessing module is further configured to determine area under thecurve for each rod pressure curve; and the jam detection module isfurther configured to: detect the jamming of the jaw or blade inresponse to the area under the curve for one of the rod pressure curvesbeing greater than or equal to a second threshold; and detect theprobability of the jaw or blade jamming in response to the area underthe curve for successive rod pressure curves increasing with time. 22.The system of claim 21 further comprising a filter configured to filter,from the area under the curve for the rod pressure curves, areas greaterthan or equal to a predetermined area.
 23. The system of claim 21further comprising a statistical analysis module configured to: generatea Z score based on the area under the curve for the rod pressure curves;and detect at least one of the jamming of the jaw or blade and theprobability of the jaw or blade jamming based on the Z score.
 24. Thesystem of claim 23 wherein the statistical analysis module is furtherconfigured to generate the Z score using values of the areas that areless than a mean of the areas.
 25. The system of claim 21 furthercomprising a transmitter configured to transmit to a computing device: afirst message with a first severity level in response to the one of thedurations being less than or equal to the predetermined threshold or thearea under the curve being greater than or equal to the secondthreshold; and a second message with a second severity level in responseto the one of the durations being less than or equal to thepredetermined threshold and the area under the curve being greater thanor equal to the second threshold, wherein the second severity level isgreater than the first severity level.
 26. A system comprising: a primemover mountable hydraulic tool comprising a hydraulic cylinderconfigured to operate a jaw or blade associated with the prime movermountable hydraulic tool; and a protective box assembly mounted to amounting wall of the prime mover mountable hydraulic tool, theprotective box assembly housing: sensors configured to sense a bore-sidepressure and a rod-side pressure of the hydraulic cylinder; a controlcircuit; and a wireless transmitter antenna providing a communicationchannel to a user interface independent of any communication channelprovided by the prime mover; wherein the control circuit comprises: aprocessor configured to: sample the bore-side pressure and the rod-sidepressure sensed by the sensors multiple times during a first stall testand a second stall test performed by the hydraulic cylinder at a firsttime and a second time, respectively; and detect an abnormalityassociated with the hydraulic cylinder based on the samples; and atransmitter configured to transmit an indication of the detectedabnormality to a remote computing device.
 27. The system of claim 26wherein the abnormality includes one or more of a fluid leakage, amechanical wear, and a friction.
 28. The system of claim 26 wherein theprocessor is further configured to: determine first baseline values ofthe bore-side pressure and the rod-side pressure based on the samplescollected during the first stall test; determine second baseline valuesof the bore-side pressure and the rod-side pressure based on the samplescollected during the second stall test; and detect the abnormalityassociated with the hydraulic cylinder based on the first baselinevalues and the second baseline values.
 29. The system of claim 28wherein the processor is further configured to detect the abnormality inresponse to differences between the first baseline values and the secondbaseline values being greater than or equal to predetermined thresholds.30. The system of claim 26 wherein the remote computing device isconfigured to transmit a message to a mobile device indicating detectionof the abnormality associated with the hydraulic cylinder.
 31. A systemcomprising: a receiver configured to receive data from a hydraulic toollocated remotely from the receiver, the data including a bore-sidepressure and a rod-side pressure of a hydraulic cylinder associated withthe hydraulic tool and collected during a first stall test and a secondstall test performed by the hydraulic cylinder at a first time and asecond time, respectively; and a processor configured to: determinefirst baseline values of the bore-side pressure and the rod-sidepressure based on the data collected during the first stall test;determine second baseline values of the bore-side pressure and therod-side pressure based on the data collected during the second stalltest; and detect an abnormality associated with the hydraulic cylinderbased on the first baseline values and the second baseline values. 32.The system of claim 31 wherein the processor is configured to detect theabnormality in response to differences between the first baseline valuesand the second baseline values being greater than or equal topredetermined thresholds.
 33. The system of claim 31 wherein the dataincludes multiple samples of the bore-side pressure and the rod-sidepressure taken at the hydraulic tool during each of the first stall testand the second stall test.
 34. The system of claim 31 wherein theabnormality includes one or more of a fluid leakage, a mechanical wear,and a friction.
 35. The system of claim 31 further comprising atransmitter configured to transmit a message to a mobile deviceindicating detection of the abnormality associated with the hydrauliccylinder.
 36. A system comprising: a prime mover mountable hydraulictool comprising a hydraulic cylinder configured to operate a jaw orblade associated with the prime mover mountable hydraulic tool; and aprotective box assembly mounted to a mounting wall of the prime movermountable hydraulic tool, the protective box assembly housing: sensorsconfigured to sense a bore-side pressure and a rod-side pressure of thehydraulic cylinder; a control circuit; and a wireless transmitterantenna providing a communication channel to a user interfaceindependent of any communication channel provided by the prime mover;wherein the control circuit comprises: a data acquisition moduleconfigured to acquire a time series data of the bore-side pressure andthe rod-side pressure from the sensors; a data processing moduleconfigured to: divide the time series data into a plurality of windowsof a predetermined duration; identify times at which the bore-sidepressure and the rod-side pressure peak in the windows; and determinedurations between successive pairs of bore-side pressure peaks androd-side pressure peaks, wherein in each pair, a rod-side pressure peakfollows a bore-side pressure peak; and a jam detection module configuredto: detect a jamming of the jaw or blade in response to one of thedurations being less than or equal to a predetermined threshold; anddetect a probability of the jaw or blade jamming in response to thedurations between the successive pairs of bore-side pressure peaks androd-side pressure peaks decreasing with time; and wherein the wirelesstransmitter antenna transmits an indication of the jamming of the jaw orblade or the probability of the blade jamming to the user interface.